#ifndef __TOOLS_H__
#define __TOOLS_H__

#define MAXDATASIZE 1500
// 线程参数传递描述符 和 报文
typedef struct MSG
{
    int fd;                          // 描述符
    unsigned char data[MAXDATASIZE]; // 原始报文数据
    int data_len;                    // 报文长度
} raw_msg;

union IP
{
    unsigned int ip_in;
    unsigned char ip_ch[4];
}; // 临时保存ip信息

extern int send_msg(int sockfd, unsigned char *msg, int len, char *if_name); // 发送数据
extern unsigned short checksum(unsigned short *buf, int len);                // 计算校验和

#endif // !__TOOLS_H__